﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Terrae.Clases;

namespace Terrae.Datos.IDaos
{
    public interface IDaoInvernadero : IDao
    {
        /// <summary>
        /// Declaración del Método Agregar Invernadero.
        /// </summary>
        /// <param name="_invernadero"></param>
        /// <returns></returns>
        bool AgregarInvernadero(Entidad _invernadero);

        /// <summary>
        /// Declaración del metodo para consultar los invernaderos
        /// (id,nombre,descripcion) asociados a una persona.
        /// </summary>
        /// <returns></returns>
        List<Entidad> ListarInvernaderos(Entidad _invenadero);

        /// <summary>
        /// Declaración del Metodo AgregarValoresVariables.
        /// </summary>
        /// <param name="_invernadero"></param>
        /// <returns></returns>
        bool AgregarValoresVariables(Entidad _invernadero);

        /// <summary>
        /// Declaración del metodo para consultar las variables de
        /// un invernadero especifico.
        /// (Temperatura, humedad, acidez y luminosidad).
        /// </summary>
        /// <returns></returns>
        Entidad ConsultarVariable(Entidad _invenadero);

        /// <summary>
        /// Declaración del metodo para consultar las variables de
        /// un invernadero especifico (temperatura, luminosidad, tanque 
        /// de agua y tanque liquido especial).
        /// </summary>
        /// <returns></returns>
        Entidad ConsultarVariableM(Entidad _invenadero);

        /// <summary>
        /// Declaración del metodo para consultar las variables
        /// (id,nombre,descripcion, temperatura, humedad, acidez, 
        /// luminosidad) asociados a un invernadero.
        /// </summary>
        /// <returns></returns>
        int ConsultarVariablesD(Entidad _invenadero);

        /// <summary>
        /// Declaración del Método Modificar Invernadero.
        /// </summary>
        /// <param name="_invernadero"></param>
        /// <returns></returns>
        bool ModificarInvernadero(Entidad _invernadero);
    }
}
